package collection;

import java.util.*;

/**
 * 排序自定义类型元素的集合
 */
public class SortLisDemo2 {
    public static void main(String[] args) {
        List<Point> list = new ArrayList<>();
        list.add(new Point(5,6));
        list.add(new Point(54,96));
        list.add(new Point(25,16));
        list.add(new Point(74,39));
        list.add(new Point(15,26));
        list.add(new Point(51,9));
        System.out.println(list);
        /*

         */
//        Collections.sort(list);
        //使用匿名内部类的形式创建比较规则
        Comparator<Point> comparator = new Comparator<Point>() {
            @Override
            public int compare(Point o1, Point o2) {
                int len1 = o1.getX() * o1.getX() + o1.getY() * o1.getY();
                int len2 = o2.getX() * o2.getX() + o2.getY() * o2.getY();
                return len1 - len2;
            }
        };
        Collections.sort(list,new Comparator<Point>() {
            @Override
            public int compare(Point o1, Point o2) {
                int len1 = o1.getX() * o1.getX() + o1.getY() * o1.getY();
                int len2 = o2.getX() * o2.getX() + o2.getY() * o2.getY();
                return len1 - len2;
            }
        });
    }
}
